function execute()
	if arg[2] == nil then
		print(
		[[Usage (optionals marked with *):
		luar [target] [arguments]*

		Examples:
		luar create-project quiz

		Available Targets (type luar help [target-name] for more info):
		luar create-project
		luar generate-app
		luar help
		luar list-attributes
		luar list-components
		luar list-templates
		luar get-template
		luar get-component
		luar add-template
		luar add-component
		luar rm-template
		luar rm-component
		luar pack-template
		luar pack-component
		]]);
	else
		f = loadstring('print(doc.'..string.gsub(arg[2], "-", "_")..'.."\\n");');
		f();
	end
	return true;
end

doc = {
	create_project = [[The create-project command creates a new Luar project for you to develop NCL applications
Usage:
		luar create-project [name of Application project]

		Example:
		luar create-project quiz]],
	generate_app = [[The generate-app command calls the document processing of the main.luar generating the NCL application in target directory
Usage in root project:
		luar generate-app]],
	help = [[The help command shows informations about the commands
Usage (optionals marked with *):
		luar help [command]*

		Example:
		luar help create-app]],
	list_attributes = [[The command list-attributes is responsible for showing the modifiable parameters of a particular Component or Template
Usage:
		luar list-attributes [name of Component or Template]

		Example:
		luar list-attributes quiz]],
	list_components = [[The command list-components is responsible for showing the Components locally available in your Luar system
Usage:
		luar list-components]],
	list_templates = [[The command list-components is responsible for showing the Templates locally available in your Luar system
Usage:
		luar list-templates]],
	get_component=[[]],
	get_template=[[]],
	add_component=[[]],
	add_template=[[]],
	pack_component=[[]],
	pack_template=[[]],
	rm_component=[[]],
	rm_template=[[]],
}
